package com.mdd.admin.service;

import com.mdd.admin.validate.commons.PageValidate;
import com.mdd.admin.validate.NetworkSalesVolumeCreateValidate;
import com.mdd.admin.validate.NetworkSalesVolumeUpdateValidate;
import com.mdd.admin.validate.NetworkSalesVolumeSearchValidate;
import com.mdd.admin.vo.NetworkSalesVolumeListedVo;
import com.mdd.admin.vo.NetworkSalesVolumeDetailVo;
import com.mdd.common.core.PageResult;
import com.mdd.common.export.NetworkSalesVolumeListedExport;

import java.util.List;

/**
 * 网销客户服务接口类
 * @author LikeAdmin
 */
public interface INetworkSalesVolumeService {

    /**
     * 网销客户列表
     *
     * @author LikeAdmin
     * @param pageValidate 分页参数
     * @param searchValidate 搜索参数
     * @return PageResult<NetworkSalesVolumeListedVo>
     */
    PageResult<NetworkSalesVolumeListedVo> list(PageValidate pageValidate, NetworkSalesVolumeSearchValidate searchValidate);

    /**
     * 网销客户列表
     *
     * @author LikeAdmin
     * @return List<NetworkSalesVolumeListedVo>
     */
    List<NetworkSalesVolumeListedExport> list();


    /**
     * 网销客户详情
     *
     * @author LikeAdmin
     * @param id 主键ID
     * @return NetworkSalesVolumeDetailVo
     */
    NetworkSalesVolumeDetailVo detail(Integer id);

    /**
     * 网销客户新增
     *
     * @author LikeAdmin
     * @param createValidate 参数
     */
    void add(NetworkSalesVolumeCreateValidate createValidate);

    /**
     * 网销客户编辑
     *
     * @author LikeAdmin
     * @param updateValidate 参数
     */
    void edit(NetworkSalesVolumeUpdateValidate updateValidate);

    /**
     * 网销客户删除
     *
     * @author LikeAdmin
     * @param id 主键ID
     */
    void del(Integer id);

}
